Статья 2221

Название статьи

Проблематика обработки транзакций при использовании микросервисной архитектуры 

Авторы

Дмитрий Сергеевич Фомин, аспирант, Национальный исследовательский Мордовский государственный университет имени Н. П. Огарева (Россия, г. Саранск,ул. Большевистская, 68),nkfominsa@gmail.com
Александр Витальевич Бальзамов, аспирант, Национальный исследовательский Мордовский государственный университет имени Н. П. Огарева (Россия, г. Саранск, ул. Большевистская, 68), veron13rus@yandex.ru 

Индекс УДК

004.451.26 

DOI

10.21685/2072-3059-2021-2-2 

Аннотация

Актуальность и цели. Объектом исследования является система электронной коммерции, построенная по принципу микросервисной архитектуры. Предметом исследования являются методы обеспечения корректной работы с транзакциями при использовании микросервисной архитектуры. Цель работы – поиск оптимального метода для решения проблемы обработки транзакций при использовании микросервисной архитектуры. Материалы и методы. Исследования проводились в области архитектурных решений при построении высоконагруженных систем электронной коммерции. Использовались методы двухфазной фиксации для обработки транзакций и паттерн-компенсационной транзакции – «Сага». Результаты. Проведен анализ особенностей работы с транзакциями и предложены методы решения проблемы обработки транзакций в системах, построенных с использованием микросервисной архитектуры. Выводы. Рассмотренные подходы, как правило, предполагают введение дополнительного сервиса (Координатора транзакций или Оркестратора Саги), которые управляют жизненным циклом транзакций, что несколько увеличивает затраты на разработку и ее сложность. Применяя описанные методы решения, система становится более отказоустойчивой, масштабируемой. 

Ключевые слова

микросервисная архитектура, транзакция, база данных, сервис,бизнес-процесс

 

 Скачать статью в формате PDF

Список литературы

 1. Фаулер М. Шаблоны корпоративных приложений. М. : Диалектика-Вильямс, 2019. 546 с.
2. Лейн К., Черети М. Базы данных. Инжиниринг надежности. СПб. : Питер, 2020. 304 с.
3. Баженова И. Ю. Разработка распределенных приложений баз данных : курс лекций. М. : МГУ им. М. В. Ломоносова, 2006. 203 с.
4. Мартин Р. Чистая архитектура. Искусство разработки программного обеспечения. СПб. : Питер, 2018. 352 с.
5. Ильин В. В. Моделирование бизнес-процессов. Практическое использование ARIS. М. : Диалектика-Вильямс, 2006. 176 с.
6. Goetsch K. Microservices for Modern Commerce: Report. CA : O'Reilly Media, 2017. P. 25–47.
7. Проблематика распределенных транзакций в контексте микросервисной архитектуры. URL: https://habr.com/ru/company/otus/blog/516720/ (дата обращения: 08.03.2021).
8. Nadareishvili I., Mitra R., McLarty M., Amundsen M. Microservice architecture. CA : O'Reilly Media, 2016. P. 25–38.
9. Committing a Transaction in Single-Phase and Multi-Phase. URL: https://docs. microsoft.com/ru-ru/dotnet/framework/data/transactions/committing-a-transaction-insinglephase-and-multi-phase (дата обращения: 07.03.2021).
10. Saga distributed transactions. URL: https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/saga/saga (дата обращения: 08.03.2021).
11. Saga pattern and distributed transactions. URL: https://bool.dev/blog/detail/sagapattern-i-raspredelennye-tranzaktsii (дата обращения: 08.03.2021).
12. Применение паттерна сага. URL: https://medium.com/@evgenzt/%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%
B5%D0%BF%D0%B0%D1%82%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%81%D0%B0%D0%B3%D0%B0-7eead841d90f (дата обращения: 08.03.2021).
13. Sagas. URL: https://microservices.io/patterns/data/saga.html (дата обращения: 08.03.2021).
14. Паттерн: Сага. URL: https://itnan.ru/post.php?c=1&p=427705 (дата обращения: 09.03.2021).
15. Паттерн: Сага. URL: https://habr.com/ru/company/otus/blog/519636/ (дата обращения: 09.03.2021).

 

Дата создания: 28.06.2021 08:07
Дата обновления: 20.09.2021 11:34